inspector: Add columns and cell renderers to the tree
authorMatthias Clasen <mclasen@redhat.com>
Thu, 8 May 2014 05:38:52 +0000 (01:38 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Sun, 11 May 2014 02:04:23 +0000 (22:04 -0400)
These are interesting objects that are worth displaying in the tree.

modules/inspector/widget-tree.c

index eda0c6eb6037e8f726ae83a26a600100b111c99e..84cbecdaf44483f68b0cd585ba67fe5f15347350 100644 (file)
@@ -205,6 +205,33 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
 
       gtk_container_forall (GTK_CONTAINER (object), on_container_forall, &data);
     }
+
+  if (GTK_IS_TREE_VIEW (object))
+    {
+      gint n_columns, i;
+      GObject *column;
+
+      n_columns = gtk_tree_view_get_n_columns (GTK_TREE_VIEW (object));
+      for (i = 0; i < n_columns; i++)
+        {
+          column = G_OBJECT (gtk_tree_view_get_column (GTK_TREE_VIEW (object), i));
+          gtk_inspector_widget_tree_append_object (wt, column, &iter, NULL);
+        }
+    }
+
+  if (GTK_IS_CELL_LAYOUT (object))
+    {
+      GList *cells, *l;
+      GObject *cell;
+
+      cells = gtk_cell_layout_get_cells (GTK_CELL_LAYOUT (object));
+      for (l = cells; l; l = l->next)
+        {
+          cell = l->data;
+          gtk_inspector_widget_tree_append_object (wt, cell, &iter, NULL);
+        }
+      g_list_free (cells);
+    }
 }
 
 void